机器学习对价格预测做模型与应用

您所在的位置:网站首页 预测算法 pdf 机器学习对价格预测做模型与应用

机器学习对价格预测做模型与应用

2023-12-02 01:48| 来源: 网络整理| 查看: 265

说到价格预测,我们首先能想到的就是kaggle一个比赛,关于房价的预测,不过在房地产行业这么火热的时代,做一个中国版的房价预测也很有意思,但是博主想做的是一个对二手设备价格的预测,通过对二手设备的类型、年代、用过的时间、地理位置等各种特征,进行一个建模,来预测售价,不过这是个比较容易点的应用,未来对于能通过一张或者几张图片就预测二手设备的价格,我觉得这个是比较有挑战的。

下面对价格的预测主要通过线性回归模型、决策树(回归树)模型、xgboost、神经网络、支持向量回归等算法模型,用sk-learn包来构建。

1.线性回归

from sklearn.linear_model import LinearRegression

2.决策树回归

from sklearn.tree import DecisionTreeRegressor

3. 支持向量回归

from sklearn.svm import SVR linear_svr = SVR(kernel='linear') linear_svr.fit(x_train, y_train.ravel()) linear_svr_predict = linear_svr.predict(x_test)

4. 梯度提升回归算法

import numpy as np from sklearn.ensemble import GradientBoostingRegressor gbdt=GradientBoostingRegressor( loss='ls' , learning_rate=0.1 , n_estimators=100 , subsample=1 , min_samples_split=2 , min_samples_leaf=1 , max_depth=3 , init=None , random_state=None , max_features=None , alpha=0.9 , verbose=0 , max_leaf_nodes=None , warm_start=False ) train_feat=np.genfromtxt("train_feat.txt",dtype=np.float32) train_id=np.genfromtxt("train_id.txt",dtype=np.float32) test_feat=np.genfromtxt("test_feat.txt",dtype=np.float32) test_id=np.genfromtxt("test_id.txt",dtype=np.float32) print train_feat.shape,rain_id.shape,est_feat.shape,est_id.shape gbdt.fit(train_feat,train_id) pred=gbdt.predict(test_feat) total_err=0 for i in range(pred.shape[0]): print pred[i],test_id[i] err=(pred[i]-test_id[i])/test_id[i] total_err+=err*err print total_err/pred.shape[0]

5. 随机森林回归

from sklearn.ensemble import RandomForestRegressor data=[[0,0,0],[1,1,1],[2,2,2],[1,1,1],[2,2,2],[0,0,0]] target=[0,1,2,1,2,0] rf = RandomForestRegressor() rf.fit(data, target) print rf.predict([[1,1,1]]) print rf.predict([[1,1,1],[2,2,2]]) #[ 1.] #[ 1. 1.9] data2=[[0,0,0],[1,1,1],[2,2,2],[3,3,3],[4,4,4],[5,5,5]] target2=[0,1,2,3,4,5] rf2 = RandomForestRegressor() rf2.fit(data2, target2) print rf2.predict([[1,1,1]]) print rf2.predict([[1,1,1],[2,2,2],[4,4,4]]) #[ 0.7] #[ 0.7 1.8 4. ]

6.xgboost的线性回归

import xgboost as xgb regr = xgb.XGBRegressor()

7. 神经网络

可以利用神经网络模型做预测,这个例子暂时还没有,后期再补吧。

总结:本文主要是对价格预测模型给出了几种快速构建的选择,基于上面模型,还可以做模型融合等操作。如果更深入了解一些相关内容,参考这篇文章:基于机器学习方法对销售预测的研究



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3